<!--

    Copyright (c) 1997, 2018 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0, which is available at
    http://www.eclipse.org/legal/epl-2.0.

    This Source Code may also be made available under the following Secondary
    Licenses when the conditions for such availability set forth in the
    Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
    version 2 with the GNU Classpath Exception, which is available at
    https://www.gnu.org/software/classpath/license.html.

    SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

-->

<f:view 
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:c="http://java.sun.com/jsp/jstl/core"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    contentType="text/html">
    <html>
        <h:body>
            <h:form id="form">
                <h3>
                    Hit toggle, and the set to show will be different from the 
                    displayed set.
                </h3>
                <h3>
                    Hit refresh to display the correct set.
                </h3>
                <h:commandButton id="submit" value="Toggle" action="#{modifiedForEachBean.toggle}" />
                <h:commandButton value="Refresh" action="null" />
                <br/>
                <h2>Set to Show: #{modifiedForEachBean.setToShow}</h2>
                <table border="1">
                    <tr>
                        <th>Value without component</th>
                        <th colspan="2">
                            Value inside component (should be equal to value 
                            without component)
                        </th>
                    </tr>
                    <c:forEach items="#{modifiedForEachBean.set}" var="outer">
                        <tr>
                            <td>#{outer}</td>
                            <td><h:outputText value="#{outer}" /></td>
                        </tr>
                    </c:forEach>
                </table>
                <h3>
                    If javax.faces.PARTIAL_STATE_SAVING=true, both columns show 
                    the previous version of the set.
                </h3>
                <h3>
                    if javax.faces.PARTIAL_STATE_SAVING=false, column #1 is correct but column #2 is stuck on the first set.
                </h3>		
            </h:form>
        </h:body>
    </html>
</f:view>
